private

Доступность

Flash Player 6.

Синтаксис

class someClassName{
  private var name;
  private function name() {
    // ваш код
  }
}

Замечание: чтобы использовать данную спецификацию члена класса, Вы должны указать использование ActionScript 2.0 и Flash Player 6 (или более позднюю версию) на закладке Flash в диалоговом окне Publish Settings вашего FLA файла. Это ключевое слово может быть использовано только во внешних файлах с классами, но никак не в коде, введенном на панели Actions..

Параметры

name Имя переменной или функции, определяемой как private.

Описание

Ключевое слово; определяет, доступна ли переменная только внутри данного класса и подклассов. По умолчанию переменные и функции доступны для объекта любого класса. Используйте это ключевое слово, если вы хотите ограничить доступ к членам класса. Для более подробной информации смотри "Controlling member access" in Использовании ActionScript во Flash.

You can use this keyword only in class definitions, not in interface definitions.

Пример

В следующем примере показывает, как можно скрыть определенные свойства класса, используя ключевое слово private. Создайте новый класс Login.as.

class Login {
  private var loginUserName:String;
  private var loginPassword:String;
  public function Login(param_username:String, param_password:String) {
    this.loginUserName = param_username;
    this.loginPassword = param_password;
  }
  public function get username():String {
    return this.loginUserName;
  }
  public function set username(param_username:String):Void {
    this.loginUserName = param_username;
  }
  public function set password(param_password:String):Void {
    this.loginPassword = param_password;
  }
}

В той же директории создайте новый FLA или AS файл и введите в первом кадре главного Таймлайна.

import Login:
var gus:Login = new Login("Gus", "Smith");
trace(gus.username); // Выведет: Gus
trace(gus.password); // Выведет: undefined
trace(gus.loginPassword); // Выдаст ошибку

Так как loginPassword является private переменной, Вы не можете получить к ней доступ из-за пределов класса Login.as. Попытка сделать это вызывает ошибку.

См. также

public, static